::strcat( error_message, "\r\nThe hardware detected a break condition. (CE_BREAK);" );
}
if ( m_CommunicationErrorCodes & CE_FRAME )
{
::strcat( error_message, "\r\nThe hardware detected a framing error. (CE_FRAME);" );
::PurgeComm( FileHandle, PURGE_RXCLEAR );
}
if ( m_CommunicationErrorCodes & CE_IOE )
{
::strcat( error_message, "\r\nAn I/O error occurred during communications with the device. (CE_IOE);" );
}
if ( m_CommunicationErrorCodes & CE_MODE )
{
::strcat( error_message, "\r\nThe requested mode is not supported or the hCommDev parameter is invalid. (CE_MODE);" );
}
if ( m_CommunicationErrorCodes & CE_OVERRUN )
{
::strcat( error_message, "\r\nA character-buffer overrun has occurred. The next character is lost. (CE_OVERRUN);" );
}
if ( m_CommunicationErrorCodes & CE_RXOVER )
{
m_ErrorCode = CE_RXOVER;
::strcat( error_message, "\r\nAn input buffer overflow has occurred. There is either no room in the input buffer, or a character was received after the end-of-file (EOF) character. (CE_RXOVER);" );
}
if ( m_CommunicationErrorCodes & CE_RXPARITY )
{
::strcat( error_message, "\r\n.The hardware detected a parity error. (CE_RXPARITY);" );
}
if ( m_CommunicationErrorCodes & CE_TXFULL )
{
::strcat( error_message, "\r\nThe application tried to transmit a character, but the output buffer was full. (CE_TXFULL);" );
}
if ( m_CommunicationErrorCodes & CE_DNS )
{
::strcat( error_message, "\r\nThe parallel device is not selected. (CE_DNS);" );
}
if ( m_CommunicationErrorCodes & CE_PTO )
{
::strcat( error_message, "\r\nA time-out occurred on the parallel device. (CE_PTO);" );
}
if ( m_CommunicationErrorCodes & CE_OOP )
{
::strcat( error_message, "\r\nThe parallel device signaled that it is out of paper. (CE_OOP);" );
}
TCHAR temp_string[ 100 ];
::sprintf( temp_string, "%d (%d in input_queue)", line_number, m_CommunicationsStatus.cbInQue );